package cn.lanqiao.business.service;

import java.util.List;
import cn.lanqiao.business.domain.Grades;
import cn.lanqiao.common.core.domain.entity.SysUser;
import org.apache.ibatis.annotations.Param;

/**
 * 学生成绩信息Service接口
 * 
 * @author lmx
 * @date 2024-07-08
 */
public interface IGradesService 
{
    /**
     * 查询学生成绩信息
     * 
     * @param id 学生成绩信息主键
     * @return 学生成绩信息
     */
    public Grades selectGradesById(Long id);

    /**
     * 查询学生成绩信息列表
     * 
     * @param grades 学生成绩信息
     * @return 学生成绩信息集合
     */
    public List<Grades> selectGradesList(Grades grades);

    /**
     * 新增学生成绩信息
     * 
     * @param grades 学生成绩信息
     * @return 结果
     */
    public int insertGrades(Grades grades);

    /**
     * 修改学生成绩信息
     * 
     * @param grades 学生成绩信息
     * @return 结果
     */
    public int updateGrades(Grades grades);

    /**
     * 批量删除学生成绩信息
     * 
     * @param ids 需要删除的学生成绩信息主键集合
     * @return 结果
     */
    public int deleteGradesByIds(Long[] ids);

    /**
     * 删除学生成绩信息信息
     * 
     * @param id 学生成绩信息主键
     * @return 结果
     */
    public int deleteGradesById(Long id);
    /**
     * 导入用户数据
     *
     * @param gradesList 学生成绩信息列表
     * @param isUpdateSupport 是否更新支持，如果已存在，则进行更新数据
     * @param operName 操作用户
     * @return 结果
     */
    public String importUser(List<Grades> gradesList, Boolean isUpdateSupport, String operName);
    /**
     * 查询班级信息接口
     */
    public List<Grades> selectClassList();
    /**
     * 导出成绩接口
     */
    List<Grades> exportResults(String claName,String semName,String courseName);
    /**
     * 根据学生姓名查询该id是否存在
     */
    Integer selectStuIdByStuName(@Param("stuName") String stuName);
}
